home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TeX 1995 July
/
TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO
/
macros
/
latex209
/
contrib
/
misc
/
at.sty
< prev
next >
Wrap
Text File
|
1993-07-07
|
2KB
|
53 lines
% at.sty Colin Hogben (chah@jet.uk)
% 12-Aug-91 First version
% 20-Mar-92 Fixed to allow for \headheight
% 06-Jul-93 \@useat only used in case of any \at material (B.Gaulle)
%
% \at(HPOS,VPOS){TEXT}
% Positions TEXT at an absolute distance of HPOS from the left edge
% and VPOS from the top edge of the current page.
%
% Example:
% \at(2cm,5cm){\parbox[t]{10cm}{
% Name\\ % Recipient's name and address positioned
% Address\\etc.}} % suitably for a windowed envelope
% -----------------------------------------------------------------
%
% First create a box in which to store absolute positioned material.
%
\newbox\@atbox
\newif\ifat\atfalse% --bg
%
% at(HPOS,VPOS){TEXT}
% Add the TEXT to the box with suitable offsets applied.
%
\long\def\at(#1,#2)#3{\setbox\@atbox=\hbox
{\unhbox\@atbox
\vtop to 0pt{\kern #2\hbox to 0pt{\kern #1\relax #3\hss}\vss}}%
\attrue}% --bg
%
% Unload the saved absolute-positioned material.
% Teleport to the actual top corner of the page by undoing the header
% separation, the top and side margins, and the mysterious 1 inch
% offset applied to each. Then make it look like a singularity (zero
% height, depth and width).
%
\def\@useat{\ifat% --bg
\vtop to 0pt{\kern-\headsep \kern-\topmargin \kern-\headheight \kern-1in
\hbox to 0pt{\kern-\@themargin \kern-1in \unhbox\@atbox \hss}\vss}%
\fi\atfalse}% --bg
%
% The following is a copy of the latex.tex \output routine except for
% line 1: this prepends the shifted absolute material to the current
% page. A little unsafe to copy code like this, but I couldn't work
% out where else to insert the box.
%
\output{\setbox255=\vbox{\@useat \unvbox255}%
\ifnum\outputpenalty <-\@M\@specialoutput\else%
\@makecol\@opcol\@floatplacement\@startcolumn%
\@whilesw\if@fcolmade \fi{\@opcol\@startcolumn}\fi%
\global\vsize\ifnum\outputpenalty >-\@Miv \@colroom%
\else \maxdimen\fi}%
%
\endinput% --bg